草庐IT

java - Web 服务的 Web 客户端

全部标签

go - 无法使用客户端提供的 id_token 在服务器中使用 Oauth2 获取用户个人资料信息

我试图在我的网页上使用googleid登录。我在控制台中记录了用户的id_token。然后我复制它并传递给服务器并尝试获取用户信息。但是我在golang服务器中收到一个错误errisoauth2:cannotfetchtoken:400BadRequestResponse:{"error":"invalid_grant"}这是我的服务端代码。funcmain(){gofunc(){http.ListenAndServe(":8123",nil)}()http.HandleFunc("/",serveFile)http.HandleFunc("/loginUser",loginUser)

http - 从 Go HTTP 服务器获取源 IP 地址

我正在尝试在Golang中实现一个HTTP服务器,它接收来自使用代理协议(protocol)的AmazonELB的请求。现在我想知道原始IP地址是什么,所以我在考虑使用this包。现在this据我所知,包使用原始HTTP,但我的服务器使用路由器实现了更高级别的HTTP服务器。我无法在它们之间进行翻译。我的问题是:我如何使用this库并仍然使用像gorilla/mux这样的路由器?现在this没什么特别的了包,它只是在比HTTP更低的层次上对话。例子://ListenonTCPport2000onallinterfaces.l,err:=net.Listen("tcp",":2000")

redirect - 重定向的上下文超时而不是使用客户端超时?

我使用显式http.Client.Timeout从客户端执行HTTP请求client:=http.Client{Timeout:timeout,//5seconds}httpResponse,err:=client.Do(httpRequest)但是这个客户端会执行一系列重定向(我不确定有多少)。据我了解,每次重定向都会重新开始超时,因此5秒的超时将为five-seconds*num-of-redirects。是否可以在context.Context中传递超时?ctx,_:=context.WithTimeout(context.Background(),5*time.Second)/

http - 禁用公用名验证 - Go HTTP 客户端

如何在gohttp客户端中禁用通用名称验证。我正在使用通用CA执行双向TLS,因此通用名称验证没有任何意义。TLSdocs说,//ServerNameisusedtoverifythehostnameonthereturned//certificatesunlessInsecureSkipVerifyisgiven.Itisalsoincluded//intheclient'shandshaketosupportvirtualhostingunlessitis//anIPaddress.ServerNamestring我不想执行InsecureSkipVerify但我不想验证通用名称。

sockets - 如何在不阻塞服务器的情况下通过 tcp 向客户端发送数据?

我正在写一个游戏服务器,因为这是我的第一次,我一直想知道如何在不滞后服务器的情况下向客户端发送数据包。即使客户端滞后,也应该向他们发送数据包。(不确定这样做是否正确,但如果我不向他们发送数据包,客户端将不会同步)所以首先我的想法是:每个玩家在连接时都会获得2个goroutines:一个用于发送,另一个用于接收。//intheservermainloopselect{caseplayer.sendChan所以这里服务器的mainloop最多可以无阻塞地向播放器channel发送100个数据包,而sendPacket是阻塞的(可能是由于滞后)。但问题是如果播放器在100个数据包后阻塞,服务

go - FileServer 处理程序是否仅服务于您指定目录中的内容?

例如,用户可以将您的url与linux命令一起放在文件夹/目录中吗?假设我的服务器包括:bin/serverfile.go...public/index.htmlstyle.css“www.example.com/../bin/etc”与serverfile.go组成:pacakagemainimport"net/http"funcmain(){htttp.ListenAndServe(":8000",http.FileServer(http.Dir("public")))} 最佳答案 http.FileServer禁止突破您指定的

go - 如何在 golang thrift 服务器中获取客户端的 IP

我正在用golang编写一个thrift服务,我想了解如何在处理函数上下文中获取客户端的IP地址。谢谢,亲爱的。 最佳答案 我想你正在使用这个GodocThriftlibrary.在您的问题中包含代码片段会很好;例如thriftserver的类型,handler定义等根据ThriftGolibrarydoc-func(p*TSocket)Addr()net.AddrReturnstheremoteaddressofthesocket.因此,如果您有权访问TSocket,那么您可以获得远程地址。

rest - 在使用 Auth0 的 golang 服务器中找出当前用户名

我正在使用auth0和golang作为休息服务,其实现与here类似。.我想知道如何找出当前触发某个API调用的用户的名称-例如,如果有人请求http://localhost:3000/products-中的go处理程序这个案例看起来像这样:varProductsHandler=http.HandlerFunc(func(whttp.ResponseWriter,r*http.Request){payload,_:=json.Marshal(products)w.Header().Set("Content-Type","application/json")w.Write([]byte(

go - 将服务帐户 key 文件传递给 bigquery 客户端

我正在尝试将服务帐户与gobigquery客户端一起使用。出于某种原因,在创建客户端时没有Go示例说明如何传递服务文件。我在这里看到https://cloud.google.com/docs/authentication/production但是这种模式不遵循任何显示的内容。它也没有显示在https://godoc.org/cloud.google.com/go/bigquery我有//bigquery_caller.gopackagemainimport"C"import"fmt"import"cloud.google.com/go/bigquery"import"golang.or

amazon-web-services - 获取 s3 存储桶上的资源 URI

目前,我使用字符串插值手动构造URI:fmt.Sprintf("https://%s.%s.amazonaws.com/%s/%s",serviceId,region,namespace,filename)恕我直言,当我通过环境变量的参数传递它们时,哪个不好。我可以访问使用我们的s3存储桶正确初始化的aws.Session对象。是否有一种语义上正确的方式(可能使用awssdkAPI)来生成与dummystringbuilder相同的资源URI? 最佳答案 从一个例子...虽然aws-sdk-go确实在svc.GetObjectReq